Wireless Serial Bus is a Protocol Abstraction Layer (PAL) entity for running USB over Wi-Fi and also handles the Wi-Fi related aspects of creating a USB connection like discovery of USB devices managing power and management of the connection. Media Agnostic USB (MA-USB) is an entity that defines support to all USB transfer types like Bulk, interrupt, isochronous and control transfers and enumeration of USB devices. This is media agnostic and relies on medium specific PAL like Wireless Serial Bus (WSB) for setting up and handling of an underlying medium connectivity. Both the WSB and the MA-USB layers support client and host roles. Application Service Protocol (ASP) is a protocol that provides a framework for initiating and controlling a Wi-Fi direct Peer-to-Peer (P2P) connection. The ASP supports deployment of services on a wireless medium. The WSB can be deployed as a service on the ASP.
The primary steps involved in establishing a USB session over the wireless medium are as follows. The WSB entity initiates a search for the peer WSB entity that may be the WSB host or client function. The underlying ASP layer initiates a discovery process. Once a counterpart entity has been discovered and if needed, pre association service discovery has been performed, the association and wireless connection between the two devices is established. Once this is done, the enumeration of the client device by the host device is performed by the MA USB host layer. This is followed by the configuration of the endpoints on the device that enables the device to be ready for data transfer.
FIG. 1 describes process of discovering multiple devices, according to prior art. As described in the FIG. 1, individual service advertises itself to ASP (using the AdvertiseService primitive) with the full reverse DNS service name. Service can seek a service using the SeekService primitive which include the requested service name to be search on the air, which trigger the Probe Request message which include the service hash attribute. The ASP calculates the service hash for the service name using the 256 SHA 1 algorithms. Only first 6 bytes will be sent over the air in the Probe Request. When the recipient device receives Probe Request, matches the received hash with the registered services. Once the service hash is matched Probe Response is sent to the seeker device. The Probe Response includes the matched full service name. Once seeker receives the probe response where the device discovery completes and seeker device identifies the device and supported service. The seeker needs to do service discovery with the all the searched devices in order to find out the detail information about the service. The Seeker sends the Service discovery GAS request to request the details of the service, the Advertiser device reply with GAS response. The GAS response includes the details of the services for e.g., for send service it is role of the devices transmitter or receiver, serviced version number etc. as per prior art, service discovery would be mandatory and it is to be done for all USB classes.
Current service developed over the USB assumes the particular role and then try USB connection with the other device. But when USB operates on wireless connections, it assumes underlying the Wi-Fi Direct connectivity. Wi-Fi Direct connection will be shared across all the services, and also multiple USB session might be going on, in such cases it is highly possible that the traditional role definition based on the service will not work properly. User might see some time service is able to connect to other device some time it is not able to connect because the assumed role is not able to support during the connection setup. This will lead to bad user experience.
The above information is presented as background information only to assist with an understanding of the present disclosure. No determination has been made, and no assertion is made, as to whether any of the above might be applicable as prior art with regard to the present disclosure.